/**   
 * Copyright © 2021 eSunny Info. Tech Ltd. All rights reserved.
 * 
 * 功能描述：曾用银行卡信息相关
 * @Package: com.yl.staff.controller 
 * @author: Bai   
 * @date: 2021年1月19日 上午10:40:05 
 */
package com.yl.staff.controller;

import java.util.List;

import org.mybatis.spring.annotation.MapperScan;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;

import com.yl.staff.dao.MapBankCardHistory;
import com.yl.staff.model.BeanBankCardHistory;

import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;

/**   
* Copyright: Copyright (c) 2021 云邻信息科技
* 
* @ClassName: BankCarHistoryController.java
* @Description: 曾用银行卡信息相关
*
* @version: v1.2.0
* @author: Bai
* @date: 2021年1月19日 上午10:40:05 
*
* Modification History:<br>
* Date         Author          Version            Description
*---------------------------------------------------------*<br>
* 2021年1月19日     Bai           v1.0.0               新建 <br>
* 2021年1月20日     Bai           v1.1.0               新增 添加曾用卡信息 
* 												  addUsedBankCard(BeanBankCardHistory bbch) 
* 												     新增 根据数据编号更新数据信息
* 												  upUsedBankCardById(BeanBankCardHistory bbch)<br>
* 2021年1月22日     Bai           v1.2.0               新增 根据数据编号删除数据
*/
/*
 * 功能列表：
* 	Date         Author          Method            				 Description
*	---------------------------------------------------------------------*<br>
*	2020年01月19日     Bai            findAll()        				 					获取曾用卡数据集合
* 	2020年01月19日     Bai            findStaffCodeByBankCard(String bankCard) 			据曾用卡查找员工编号
* 	2020年01月19日     Bai            findUsedBankCardByStaffCode(String staffCode)		根据员工编号查找曾用卡信息
*   2020年01月20日     Bai            addUsedBankCard(BeanBankCardHistory bbch)    		添加曾用卡信息
*	2020年01月20日     Bai            upUsedBankCardById(BeanBankCardHistory bbch)		根据数据编号更新数据信息
*   2020年01月20日     Bai            remove(int id)                                     根据数据编号删除数据
 * */
@RestController
@MapperScan("com.yl.staff.dao")
@Api(value = "基础数据接口", tags = "曾用银行卡信息相关")
public class BankCardHistoryController {
	/*
	 * bank-card-history 数据接口对象
	 * */
	@Autowired
	private MapBankCardHistory mapBankCardHistory;
	/**
	 * 
	* @Function: BankCarHistoryController.java
	* @Description: 获取曾用卡数据集合
	*
	* @param:无
	* @return：List<BeanBankCardHistory> 曾用银行卡集合 OR [] 空集合
	* @throws：异常描述
	*
	* @version: v1.0.0
	* @author: Bai
	* @date: 2021年1月19日 上午10:47:20 
	*
	* Modification History:<br>
	* Date         Author          Version            Description
	*---------------------------------------------------------*<br>
	* 2021年1月19日     Bai           v1.0.0               	修改 <br>
	 */
	@RequestMapping(value = "/usedBankCardData",method = RequestMethod.GET)
	@ApiOperation(value = "获取曾用卡数据集合")
	public List<BeanBankCardHistory> findAll(){
		return mapBankCardHistory.selectAll();
	}
	/**
	 * 
	* @Function: BankCarHistoryController.java
	* @Description: 根据曾用卡查找员工编号
	*
	* @param:String bankCard 曾用卡号
	* @return：String 员工编号 OR null
	* @throws：异常描述
	*
	* @version: v1.0.0
	* @author: Bai
	* @date: 2021年1月19日 上午11:16:45 
	*
	* Modification History:<br>
	* Date         Author          Version            Description
	*---------------------------------------------------------*<br>
	* 2021年1月19日     Bai           v1.0.0              	新建 <br>
	 */
	@RequestMapping(value = "/findStaffByUsedBankCard",method = RequestMethod.POST)
	@ApiOperation(value = "根据曾用卡查找员工编号")
	public String findStaffCodeByBankCard(@ApiParam(name = "bankCard",value="曾用卡卡号",required = true) @RequestParam(name="bankCard") String bankCard) {
		return mapBankCardHistory.selectStaffCodeByBankCard(bankCard);
	}
	/**
	 * 
	* @Function: BankCarHistoryController.java
	* @Description: 该函数的功能描述
	*
	* @param:描述1描述
	* @return：返回结果描述
	* @throws：异常描述
	*
	* @version: v1.0.0
	* @author: Bai
	* @date: 2021年1月19日 上午11:24:31 
	*
	* Modification History:<br>
	* Date         Author          Version            Description
	*---------------------------------------------------------*<br>
	* 2021年1月19日     Bai           v1.0.0              	新建 <br>
	 */
	@RequestMapping(value = "/findUsedBankCardByStaffCode",method = RequestMethod.POST)
	@ApiOperation(value = "根据员工编号查找曾用卡信息")
	public List<BeanBankCardHistory> findUsedBankCardByStaffCode(@ApiParam(name = "staffCode",value="员工编号",required = true) @RequestParam(name="staffCode") String staffCode){
		return mapBankCardHistory.selectByStaffCode(staffCode);
	}
	/**
	 * 
	* @Function: BankCardHistoryController.java
	* @Description: 添加曾用卡信息
	*
	* @param:BeanBankCardHistory 曾用卡信息
	* @return： boolean true OR false
	* @throws：异常描述
	*
	* @version: v1.0.0
	* @author: Bai
	* @date: 2021年1月20日 下午3:49:56 
	*
	* Modification History:<br>
	* Date         Author          Version            Description
	*---------------------------------------------------------*<br>
	* 2021年1月20日     Bai             v1.0.0                                   新建 <br>
	 */
	@RequestMapping(value = "/addUsedBankCard",method = RequestMethod.POST)
	@ApiOperation(value = "添加曾用卡信息")
	@ApiImplicitParams({
		@ApiImplicitParam(paramType="query",name="id",dataType="int",required=false,value="该数据禁止填写"),
		@ApiImplicitParam(paramType="query",name="staffCode",dataType="String",required=true,value="员工编号"),
		@ApiImplicitParam(paramType="query",name="bankCard",dataType="String",required=true,value="银行卡号"),
		@ApiImplicitParam(paramType="query",name="bankName",dataType="String",required=true,value="银行名称"),
	})
	public boolean addUsedBankCard(BeanBankCardHistory bbch) {
		return mapBankCardHistory.insertInto(bbch);
	}
	/**
	 * 
	* @Function: BankCardHistoryController.java
	* @Description: 添加曾用卡信息
	*
	* @param:BeanBankCardHistory 曾用卡信息实体
	* @return： boolean true OR false
	* @throws：异常描述
	*
	* @version: v1.0.0
	* @author: Bai
	* @date: 2021年1月20日 下午3:52:07 
	*
	* Modification History:<br>
	* Date         Author          Version            Description
	*---------------------------------------------------------*<br>
	* 2021年1月20日     Bai             v1.0.0              	新建<br>
	 */
	@RequestMapping(value = "/upUsedBankCardById",method = RequestMethod.POST)
	@ApiOperation(value = "根据数据编号更新数据信息")
	@ApiImplicitParams({
		@ApiImplicitParam(paramType="query",name="id",dataType="int",required=true,value="数据编号"),
		@ApiImplicitParam(paramType="query",name="staffCode",dataType="String",required=true,value="员工编号"),
		@ApiImplicitParam(paramType="query",name="bankCard",dataType="String",required=true,value="银行卡号"),
		@ApiImplicitParam(paramType="query",name="bankName",dataType="String",required=true,value="银行名称"),
	})
	public boolean upUsedBankCardById(BeanBankCardHistory bbch) {
		return mapBankCardHistory.updateById(bbch);
	}
	/**
	 * 
	* @Function: BankCardHistoryController.java
	* @Description: 根据数据编号删除曾用卡信息
	*
	* @param: int 数据编号
	* @return： boolean true OR false
	* @throws：异常描述
	*
	* @version: v1.0.0
	* @author: Bai
	* @date: 2021年1月22日 上午10:12:37 
	*
	* Modification History:<br>
	* Date         Author          Version            Description
	*---------------------------------------------------------*<br>
	* 2021年1月22日     Bai             v1.0.0                                    新建 <br>
	 */
	@RequestMapping(value = "/removeUsedBankCardById",method = RequestMethod.POST)
	@ApiOperation(value = "根据数据编号删除曾用卡信息")
	public boolean remove(@ApiParam(name = "id",value="数据编号",required = true) @RequestParam(name="id")int id) {
		return mapBankCardHistory.deleteById(id);
	}

}
